#题目一：创建一个学生类，类名是Student，属性：姓名，年龄，学校，成绩(以字典形式保存)，方法：求总分、求平均值
class Student(object):
    def __init__(self,name,age,school,kwargs):
        self.name=name
        self.age=age
        self.school=school
        self.score=kwargs

    def getsum(self):
        sum=0
        for k,v in self.score.items():
            sum+=v
        return sum
        #return sum(self.score.values())

    def getavg(self):
        return Student.getsum(self)/len(self.score)
        #return self.getsum() /len(self.score)

score={'语文':100,'数学':100,'英语':98}
student1=Student("张三",18,"湖南农大",score)
print("张三的总分为:",student1.getsum())
print("张三的平均分为:",student1.getavg())


#题目二：已经有Bus317这个类
#1.实例化一个对象 2.使用对象的属性 3.使用对象的方法 4.添加实例属性 5.修改实例属性 6.添加类属性 7.修改类属性 8.删除属性
class Bus317(object):
    prod = "A"

    def __init__(self,car_num,name):
        self.car_name=car_num
        self.name = name
        self.line="318"

    def run(self,flag=0):
        if flag==0:
            print("从A站开往C站")
        else:
            print("从C站开往A站")

bus1=Bus317("317路公交车","李四")  #1.实例化一个对象
print("实例化对象的车名为：",bus1.car_name)   #2.使用对象的属性
print("实例化对象的路线是：")
bus1.run(1)      #3.使用对象的方法
bus1.price=2     #4.添加实例属性
bus1.prod = "B"
print(f"添加的实例属性是price={bus1.price}")
bus1.price=4        #5.修改实例属性
print(f"修改实例属性price之后的值为{bus1.price}")

Bus317.line=317   #6.添加类属性
print(f"添加的类属性是路线{Bus317.line}")
Bus317.line=110       #7.修改类属性
print(f"修改类属性路线之后的值为{Bus317.line}")
del(Bus317.line)
try:
    print("验证是否删除",Bus317.line)
except Exception:
    print("类属性line已经删除")


